package ufpr.mestrado.ais.base.operator.affinity;

import jmetal.base.Operator;
import jmetal.util.JMException;
import ufpr.mestrado.ais.util.AISNonDominatedSolutionList;
import ufpr.mestrado.ais.util.VISDistance;

public class VISAffinity extends Operator {

	/**
	 * 
	 */
	private static final long serialVersionUID = 450171271421090033L;

	@Override
	public Object execute(Object object) throws JMException {

		// calculadora de distâncias
		final VISDistance distance = new VISDistance();

		final AISNonDominatedSolutionList solutionSet = (AISNonDominatedSolutionList) object;

		final double[][] distance_matrix = distance.distanceMatrix(solutionSet);

		return distance_matrix;
	}

}
